56bce9645b536c1b04c71b3ce3e2dca07ed545d7,app/src/main/java/com/felkertech/cumulustv/plugins/MainPicker.java,MainPicker,importChannels,#InputStream#,189

Before Change


                    .content(listings.getChannelList())
                    .positiveText(R.string.ok)
                    .negativeText(R.string.no)
                    .callback(new MaterialDialog.ButtonCallback() {
                        @Override
                        public void onPositive(MaterialDialog dialog) {
                            super.onPositive(dialog);
                            Toast.makeText(MainPicker.this, R.string.import_bulk_wait,
                                    Toast.LENGTH_SHORT).show();
                            new Thread(new Runnable() {
                                @Override
                                public void run() {
                                    ChannelDatabase channelDatabase =
                                            ChannelDatabase.getInstance(MainPicker.this);
                                    for (M3uParser.M3uTvChannel channel :
                                            listings.channels) {
                                        try {
                                            channelDatabase.add(channel.toJsonChannel());
                                        } catch (JSONException e) {
                                            e.printStackTrace();
                                        }
                                    }
                                    channelDatabase.save();
                                    Handler finishedImporting =
                                            new Handler(Looper.getMainLooper()) {
                                                @Override
                                                public void handleMessage(Message msg) {
                                                    super.handleMessage(msg);
                                                    Toast.makeText(MainPicker.this,
                                                            R.string.import_bulk_success,
                                                            Toast.LENGTH_SHORT).show();
                                                    saveDatabase();
                                                    finish();
                                                }
                                            };
                                    finishedImporting.sendEmptyMessage(0);
                                }
                            }).start();
                        }
                    })
                    .show();
        } catch (IOException e) {
            e.printStackTrace();
        }

After Change


                    .title(getString(R.string.import_bulk_title, listings.channels.size()))
                    .content(listings.getChannelList())
                    .positiveText(R.string.ok)
                    .onPositive(new MaterialDialog.SingleButtonCallback() {
                        @Override
                        public void onClick(@NonNull MaterialDialog dialog,
                                @NonNull DialogAction which) {
                            Toast.makeText(MainPicker.this, R.string.import_bulk_wait,
                                    Toast.LENGTH_SHORT).show();
                            new Thread(new Runnable() {
                                @Override
                                public void run() {
                                    ChannelDatabase channelDatabase =
                                            ChannelDatabase.getInstance(MainPicker.this);
                                    for (M3uParser.M3uTvChannel channel :
                                            listings.channels) {
                                        try {
                                            channelDatabase.add(channel.toJsonChannel());
                                        } catch (JSONException e) {
                                            e.printStackTrace();
                                        }
                                    }
                                    channelDatabase.save();
                                    Handler finishedImporting =
                                            new Handler(Looper.getMainLooper()) {
                                                @Override
                                                public void handleMessage(Message msg) {
                                                    super.handleMessage(msg);
                                                    Toast.makeText(MainPicker.this,
                                                            R.string.import_bulk_success,
                                                            Toast.LENGTH_SHORT).show();
                                                    saveDatabase();
                                                    finish();
                                                }
                                            };
                                    finishedImporting.sendEmptyMessage(0);
                                }
                            }).start();
                        }
                    })
                    .negativeText(R.string.no)
                    .onNegative(new MaterialDialog.SingleButtonCallback() {
                        @Override
                        public void onClick(@NonNull MaterialDialog dialog,
                                @NonNull DialogAction which) {
                            finish();
                        }
                    })
                    .show();
        } catch (IOException e) {
            e.printStackTrace();
        }